package com.sunlee.admin.api.module.security.dao;

import com.sunlee.admin.api.module.security.entity.SysUserTokenEntity;
import com.sunlee.common.core.dao.BaseDao;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

/**
 * 系统用户Token
 *
 * @author sunlee
 */
@Mapper
public interface SysUserTokenDao extends BaseDao<SysUserTokenEntity> {

    /**
     * 根据令牌获取系统用户信息
     *
     * @param token 令牌
     * @return 子菜单
     */
    SysUserTokenEntity getByToken(String token);

    /**
     * 根据用户ID获取系统用户信息
     *
     * @param userId 用户ID
     * @return 子菜单
     */
    SysUserTokenEntity getByUserId(Long userId);

    /**
     * 根据用户ID，更新用户令牌信息
     *
     * @param userId 用户ID
     * @param token  令牌
     */
    void updateToken(@Param("userId") Long userId, @Param("token") String token);
}
